package com.opgea.tutor.domain.entities;

import java.io.Serializable;

import javax.persistence.Access;
import javax.persistence.AccessType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * Entity implementation class for Entity: Specialization
 * 
 */
@Entity
@Table(name = "SPECIALIZATION")
@Access(AccessType.FIELD)
public class Specialization implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;
    private String subjectName;
    private String topicName;
    private String moreDescription;
    private String whichStandard;
    private int selfRating;
    private int studentRating;

    public Specialization() {
    }

    public long getId() {
	return id;
    }

    public void setId(long id) {
	this.id = id;
    }

    public String getSubjectName() {
	return subjectName;
    }

    public void setSubjectName(String subjectName) {
	this.subjectName = subjectName;
    }

    public String getTopicName() {
	return topicName;
    }

    public void setTopicName(String topicName) {
	this.topicName = topicName;
    }

    public String getMoreDescription() {
	return moreDescription;
    }

    public void setMoreDescription(String moreDescription) {
	this.moreDescription = moreDescription;
    }

    public String getWhichStandard() {
	return whichStandard;
    }

    public void setWhichStandard(String whichStandard) {
	this.whichStandard = whichStandard;
    }

    public int getSelfRating() {
	return selfRating;
    }

    public void setSelfRating(int selfRating) {
	this.selfRating = selfRating;
    }

    public int getStudentRating() {
	return studentRating;
    }

    public void setStudentRating(int studentRating) {
	this.studentRating = studentRating;
    }

    @Override
    public int hashCode() {
	final int prime = 31;
	int result = 1;
	result = prime * result + (int) (id ^ (id >>> 32));
	return result;
    }

    @Override
    public boolean equals(Object obj) {
	if (this == obj)
	    return true;
	if (obj == null)
	    return false;
	if (getClass() != obj.getClass())
	    return false;
	Specialization other = (Specialization) obj;
	if (id != other.id)
	    return false;
	return true;
    }

    @Override
    public String toString() {
	return "Specialization [id=" + id + ", subjectName=" + subjectName
		+ ", topicName=" + topicName + ", moreDescription="
		+ moreDescription + ", whichStandard=" + whichStandard
		+ ", selfRating=" + selfRating + ", studentRating="
		+ studentRating + "]";
    }
}
